﻿<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<dynamic>" %>

<asp:Label ID="lblMsg" runat="server" Text="" 
    style="color: #FF0000; font-weight: 700"></asp:Label>
<asp:Panel ID="pnImport" runat="server">
<div style="font-size:25px; color:#0066FF; font-weight:bold; text-align:center; padding:5px;">
    <asp:Label ID="lblTitle" runat="server" Text=""></asp:Label>
</div>
<div class="title">Bước 1. Upload file excel (.xls)</div>
<asp:Panel ID="pnBuoc1" runat="server">
<div style="border:1px solid blue; padding:3px;">
<asp:FileUpload ID="fUpload" runat="server" />
    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" 
        ErrorMessage="Chưa chọn file" ControlToValidate="fUpload" ValidationGroup="uploadfile"></asp:RequiredFieldValidator>
    <br />
<asp:Button ID="cmdUpload" runat="server"
    Text="Upload và chuyển sang bước 2" onclick="cmdUpload_Click" 
        
        ToolTip="Chọn file Excel hoặc file Text có dòng đâu tiên là tiêu đề cột dữ liệu" 
        ValidationGroup="uploadfile" />
</div>
</asp:Panel>
    <br />
    
<div class="title">Bước 2. Chọn cột tương ứng trong file dữ liệu ở bước 1 với dữ liệu thực</div>
<asp:Panel ID="pnBuoc2" runat="server" Width="100%">

<div style="border:1px solid blue; padding:3px;"><div>
Chọn sheet dữ liệu cần lấy:<asp:DropDownList ID="cboSheets" runat="server" 
                        AutoPostBack="True" onselectedindexchanged="cboSheets_SelectedIndexChanged">
                    </asp:DropDownList>
    &nbsp;hoặc
    <asp:Button ID="cmdBack1" runat="server" 
        Text="Trở lại bước 1" ToolTip="Trở lại bước 1 để upload lại file dữ liệu" 
        onclick="cmdBack1_Click" />
    <br />
    Chọn loại nhập liệu:<asp:RequiredFieldValidator ID="RequiredFieldValidator2" 
        runat="server" Display="Dynamic" ErrorMessage="Chưa chọn loại nhập liệu" 
        ControlToValidate="rdLoaiNhapLieu" ValidationGroup="nhaplieu"></asp:RequiredFieldValidator><br />
    <asp:RadioButtonList ID="rdLoaiNhapLieu" runat="server" 
        RepeatDirection="Horizontal" RepeatLayout="Flow" 
        style="color: #3399FF; font-weight: 700" ValidationGroup="nhaplieu">
        <asp:ListItem>Cập nhật dữ liệu cũ khi nhập liệu</asp:ListItem>
        <asp:ListItem>Xóa hết dữ liệu cũ khi nhập liệu</asp:ListItem>
        <asp:ListItem>Bỏ qua dữ liệu cũ khi nhập liệu</asp:ListItem>
    </asp:RadioButtonList>
    </div>
    <table style="width:100%;" cellpadding="3" cellspacing="3">
        <colgroup>
            <col width="*" />
            <col width="100px" />
            <col width="*" />
            <col width="30px" />
            <col width="*" />
           
            <tr>
                <td align="center">
                    <b>Cột nguồn (excel)</b></td>
                
                <td align="center">
                    <b>Thao tác</b></td>
                    <td align="center">
                    <b>Cột đích (server)</b></td>
                    <td align="center">
                    =</td>
                <td align="center">
                    <b>Kết quả ánh xạ</b></td>
            </tr>
            <tr>
                <td>
                    <asp:ListBox ID="lsNguon" runat="server" Width="100%" Rows="10"></asp:ListBox>
                </td>
                
                <td align="center">
                    <a id="cmdAdd" onmouseout="UnTip();" href='javascript:;'
                      onmouseover="Tip('Thêm một tương ứng cột từ nguồn và đích vào danh sách kết quả. Ví dụ: tương ứng với cột môn_học trong excel là cột TenMonHoc trong dữ liệu server.',TITLE,'Thông tin');"
                      onclick="AddItem();" >Thêm &gt;&gt;</a>
                    <br />
                    <a id="cmdReset" onmouseout="UnTip();" href="./?step=2"
                      onmouseover="Tip('Khôi phục lại trạng thái ban đầu của kết quả ánh xạ và tự động ánh xạ các cột cùng tên đưa vào danh sách kết quả.',TITLE,'Thông tin');"
                      >Reset</a>
                    <br />
                    <a id="cmdDel" onmouseout="UnTip();" href='javascript:;'
                      onmouseover="Tip('Xóa một ánh xạ kết quả đang chọn ở danh sách [Kết quả ánh xạ].',TITLE,'Thông tin');"
                      onclick="DelItem();" >&lt;&lt; Xóa</a>
                </td>
                <td>
                    <asp:ListBox ID="lsDich" runat="server" Width="100%" Rows="10"></asp:ListBox>
                </td>
                <td align="center">
                    =&gt;</td>
                <td>
                    
                    <asp:ListBox ID="lsKetQua" runat="server" Rows="10" Width="100%" 
                        SelectionMode="Multiple">
                    </asp:ListBox>
                    <asp:HiddenField runat="server" id="lsHidden">
                        </asp:HiddenField>
                </td>
            </tr>
            
        </colgroup>
    </table><div><script language="javascript">
                     var list1 = findObj('<%=lsNguon.ClientID %>');
                     var list2 = findObj('<%=lsDich.ClientID %>');
                     var list3 = findObj('<%=lsKetQua.ClientID %>');
                     var lstxt = findObj('<%=lsHidden.ClientID %>');
                     var space = '<%=SplitMap %>';
                     sortOptions(list1);
                     sortOptions(list2);
                     sortOptions(list3);
                    </script>
        <asp:Label ID="lblRequireFields" runat="server" Text=""></asp:Label>
        
<asp:Button ID="cmdImport" runat="server" onclick="cmdImport_Click" Text="Thực hiện nhập liệu" 
ToolTip="Đưa dữ liệu file nguồn lên server với các ánh xạ đã chọn trong ô kết quả" 
            ValidationGroup="nhaplieu" /></div>
</div></asp:Panel>
 <br />
    
<div class="title">Bước 3. Chờ kết quả nhập liệu</div>
<asp:Panel ID="pnBuoc3" runat="server">
<div style="border:1px solid blue; padding:3px;">
<a style="display:none;" id="astep1" href="./?step=1" onmouseout="UnTip();"
                      onmouseover="Tip('Quay lại bước 1 để upload file dữ liệu khác.',TITLE,'Thông tin');">Quay lại bước 1</a>
    <asp:Label ID="lblFrame" runat="server" Text=""></asp:Label>

</div>
</asp:Panel>
 </asp:Panel>